/* Copyright 2018 JDCLOUD.COM

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http:#www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

相关接口
API related to order

OpenAPI spec version: v2
Contact: 

NOTE: This class is auto generated by the jdcloud code generator program.
*/


#ifndef OrderApiModel_h
#define OrderApiModel_h
#import <JDCloudOCSDKCore/JDCloudOCSDKCore.h>
#import <JDCloudOCSDKOrder/OrderModel.h>


@interface OrderQueryOrderRequest:JDCloudRequest

/// 是否包含商品详情
@property (strong,nonatomic,nonnull)  NSNumber*  includeDetail;
/// orderNumber ID
@property (strong,nonatomic,nonnull)  NSString*  orderNumber;
-(id) initWithRegion:(NSString *)regionId
includeDetail:(NSNumber*)includeDetail
orderNumber:(NSString*)orderNumber;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
includeDetail:(NSNumber*)includeDetail
orderNumber:(NSString*)orderNumber;

@end

@interface OrderPayOrderResult : NSObject
/// 订单号
 @property (strong,nonatomic,nonnull)  NSString*  orderNumber;
/// 自动支付标示，当为true,才会发生自动支付，后付费的订单直接支付0元，预付费的订单（余额+代金劵）&gt; 订单应付金额，成功，否则支付失败（建议到京东云平台用现金方式支付）
 @property (strong,nonatomic,nonnull)  NSNumber*  autoPay;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithOrderNumber:(NSString*) orderNumber

    autoPay:(NSNumber*)autoPay;
@end

@interface OrderPayOrderRequest:JDCloudRequest

/// 自动支付标示，当为true,才会发生自动支付，后付费的订单直接支付0元，预付费的订单（余额+代金劵）&gt; 订单应付金额，成功，否则支付失败（建议到京东云平台用现金方式支付）
@property (strong,nonatomic,nonnull)  NSNumber*  autoPay;
/// orderNumber ID
@property (strong,nonatomic,nonnull)  NSString*  orderNumber;
-(id) initWithRegion:(NSString *)regionId
autoPay:(NSNumber*)autoPay
orderNumber:(NSString*)orderNumber;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
autoPay:(NSNumber*)autoPay
orderNumber:(NSString*)orderNumber;

@end

@interface OrderQueryOrdersRequest:JDCloudRequest

/// QueryVo
@property (strong,nonatomic,nonnull)  ListOrderRequest*  queryVo;
-(id) initWithRegion:(NSString *)regionId
queryVo:(ListOrderRequest*)queryVo;

-(id) initWithRegion:(NSString *)regionId
             version:(NSString *)version
queryVo:(ListOrderRequest*)queryVo;

@end

@interface OrderQueryOrderResult : NSObject
/// Data
 @property (strong,nonatomic,nonnull)  OrderDetailResponseObject*  data;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithData:(OrderDetailResponseObject*) data;
@end

@interface OrderQueryOrderResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property OrderQueryOrderResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(OrderQueryOrderResult*) result;
@end

@interface OrderQueryOrdersResult : NSObject
/// ResultList
 @property (strong,nonatomic,nonnull)  NSArray<OrderResponseObject*>*  resultList;
/// TotalCount
 @property (strong,nonatomic,nonnull)  NSNumber*  totalCount;
/// TotalPage
 @property (strong,nonatomic,nonnull)  NSNumber*  totalPage;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;
-(id) initWithResultList:(NSArray<OrderResponseObject*>*) resultList

    totalCount:(NSNumber*)totalCount

    totalPage:(NSNumber*)totalPage;
@end

@interface OrderPayOrderResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property OrderPayOrderResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(OrderPayOrderResult*) result;
@end

@interface OrderQueryOrdersResponse : NSObject

@property NSString* requestId;

@property ServiceError* error;

@property OrderQueryOrdersResult* result;

-(NSMutableDictionary*) dictionary;

-(id) initWithDic:(NSDictionary*)dictionary;

-(id) initWithRequestId:(NSString*) requestId
        error:(ServiceError*) error
        result:(OrderQueryOrdersResult*) result;
@end

#endif /* OrderApiModel_h */
